Data storage systems typically contain multiple storage processors for handling large volumes of data access requests from host computers. For example, users of host computers may wish to access data for reading or writing various disks or other storage media of a data storage system. The storage processors may receive and process hundreds or even thousands of storage requests per minute.
The storage processors of such data storage systems generate log histories based on events. Events that are logged by storage processors may include receipt and completion of storage requests from hosts, connection or disconnection of devices connected to storage processors, and the installation or deletion of software, for example.
In conventional data storage systems, each storage processor is configured with both a logging system client and a logging system server. Each logging system client generates log entries in response to events that occur on the storage processor on which it is run and sends the log entries to a logging system server. The logging system server receives the log entries and writes them to persistent storage (e.g., RAID protected disks and/or flash drives). Each processing node that runs a logging client is configured to apply a timestamp to each log entry it generates.